#include "pch.h"
#include <WinSock2.h>
#include <stdio.h>
#include "socket.h"

void SocketInit()
{
	WORD wVersionRequested;
	WSADATA wsaData;
	int err;

	wVersionRequested = MAKEWORD(1, 1);

	err = WSAStartup(wVersionRequested, &wsaData);
	if (err != 0) {
		return;
	}

	if (LOBYTE(wsaData.wVersion) != 1 ||
		HIBYTE(wsaData.wVersion) != 1) {
		WSACleanup();
		return;
	}

	SOCKET sockSrv = socket(AF_INET, SOCK_STREAM, 0);

	SOCKADDR_IN addrSrv;
	addrSrv.sin_addr.S_un.S_addr = htonl(INADDR_ANY);
	addrSrv.sin_family = AF_INET;
	addrSrv.sin_port = htons(6000);

	bind(sockSrv, (SOCKADDR*)&addrSrv, sizeof(SOCKADDR));

	listen(sockSrv, 5);

	SOCKADDR_IN  addrClient;
	int len = sizeof(SOCKADDR);

	while (1)
	{
		SOCKET sockConn = accept(sockSrv, (SOCKADDR*)&addrClient, &len);
		char sendbuffer[100];
		sprintf(sendbuffer, "Welcome %s here", inet_ntoa(addrClient.sin_addr));
		send(sockConn, sendbuffer, strlen(sendbuffer) + 1, 0);
		char recvchar[100];
		recv(sockConn, recvchar, 100, 0);
		printf("%s\n", recvchar);
		closesocket(sockConn);
	}


}
